package com.zenithmind.mall.pojo.vo;

import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 购物车VO
 * 
 * @author ZenithMind Team
 * @since 2025-06-09
 */
@Data
public class CartVO {

    /**
     * 购物车ID
     */
    private String id;

    /**
     * 商品ID
     */
    private String productId;

    /**
     * 商品名称
     */
    private String productName;

    /**
     * 商品主图
     */
    private String productImage;

    /**
     * 商品价格
     */
    private BigDecimal productPrice;

    /**
     * 商品原价
     */
    private BigDecimal productOriginalPrice;

    /**
     * 商品库存
     */
    private Integer productStock;

    /**
     * 商品状态
     */
    private Integer productStatus;

    /**
     * 商品规格ID
     */
    private String specificationId;

    /**
     * 商品规格文本
     */
    private String specificationText;

    /**
     * 商品数量
     */
    private Integer quantity;

    /**
     * 购物车中的价格（加入时的价格）
     */
    private BigDecimal price;

    /**
     * 小计金额
     */
    private BigDecimal totalAmount;

    /**
     * 是否选中
     */
    private Integer selected;

    /**
     * 是否有效（商品是否还存在且上架）
     */
    private Boolean isValid;

    /**
     * 无效原因
     */
    private String invalidReason;

    /**
     * 加入购物车时间
     */
    private LocalDateTime createTime;
}
